import Vue from "vue";
import Vuex from "vuex";

import modules from "./modules";

// vuex是vue的插件
// 安装插件
Vue.use(Vuex);

// Vuex数据特点和props一样，是只读，不能直接更新
// 想要更新要触发action或mutation函数

// 配置
const store = new Vuex.Store({
	/*
		modules的值：
			{
				count: {
					state: {},
					getters: {},
					actions: {},
					mutations: {},
				},
				person: {
					state: {},
					getters: {},
					actions: {},
					mutations: {},
				}
			}
		此时vuex管理的state数据：
			{
				count: {
					count: 0
				},
				person: {
					name: 'jack',
					age: 18,
					count: 0
				}
			}
		此时vuex管理的getters数据：
			{
				oddOrEven() {}
			}
		此时vuex管理的actions数据：
			{
				incrementAsync() {}
			}
		此时vuex管理的mutations数据：
			{
				INCREMENT() {},
				DECREMENT() {},
			}
	*/
	modules, // 使用vuex的模块
});

export default store;
